Method and system for user profiling for content recommendation

ABSTRACT

The present teaching relates to generating user profiles with semantic knowledge. A first information associated with a user is obtained. One or more entities are identified from the first information. The one or more entities are augmented based on second information to generate a set of augmented entities. The set of augmented entities are clustered into a set of hierarchical clusters. A set of user profiles is generated based on the set of hierarchical clusters so that the user profile is to be used to personalize content recommendation.

BACKGROUND

1. Technical Field

The present teaching relates to methods, systems, and programming foruser profiling for content recommendation over the internet. Inparticular, the present teaching relates to methods, systems, andprogramming for user profiling for content recommendation by leveragingsemantic knowledge.

2. Discussion Of Technical Background

User profiling is used for content recommendation, personalized websearch, ads push, etc. to enhance the user experience. The goal of theuser profiling is to represent users' interests in the same featurespace as that of the items being recommended. Modeling user interests isan important challenge for personalized search and recommendation. Athorough understanding of the user interests expressed explicitlythrough search queries or implicitly through content view and ad clicksis a necessity to provide content that meets the user's requirements. Assuch, accurate understanding of current user interests and predictingtheir future interests are core tasks for user interest modeling. Forexample, a query such as “ACL” could be interpreted differentlydepending on what entities the users have previously queried or read onthe pages, such as “Anterior Cruciate Ligament” vs. “InformationExtraction” vs. “Jose Gonzalez” (musician). This contextual semanticknowledge extracted from queries and page content could be used tofacilitate understanding of the current and future user interests. Theresult could be further employed to dynamically adapt search interfacesto support different tasks, such as re-ranking search results,classifying the query, suggesting alternative query formulations, orrecommending news feed or ads. Traditionally, user interests are modeledusing different sources of profile information, e.g., explicitdemographic or interest profiles, or implicit profiles based on previousqueries, search result clicks, general browsing activity, or richerdesktop indices, etc. Further, user preference is usually inferred fromthe user activities, e.g., clicking on a hyperlink,viewing/saving/bookmarking a page, etc., rather than from understandingthe semantics of the queries and the content of visited pages.

The recent use of deep semantic knowledge based on user activities onthe internet allows furnishing rich contextual information associatedwith the user profiles. For example, Yahoo Knowledge Graph is one typeof knowledge base comprising deep semantic knowledge about entitiesextracted from the search queries or the content of the webpages thatthe users have visited. Given the query “Jose Gonzalez,” the userinterest can be inferred in music based on the fact that “Jose Gonzalez”is a singer-songwriter from the Yahoo Knowledge Graph. Hence, the userinterests can be modeled from a deep semantic aspect by investigatingthe information based on the entities that the users expressed interestin. An existing art infers the user interests from semantics byanalyzing topics from queries that the user inputted and the URLcontents that the user has viewed. However, topics are too general toaccurately capture the specific entities or areas that the users areinterested in. For example, inferring the user interest in “sports” byanalyzing the user query “Michael Jordan” is too general and notaccurate because the user may be interested in the basketball sportsonly.

There are several products that recommend articles, videos, productsetc. based on user's search behavior including Google Now Cards based onpersonal web queries, Facebook notifications based on “likes,” Amazon'sproduct recommendation based on recent product queries and checkouts,YouTube's recommended videos based on viewing history, etc. The aboverecommending products limit themselves to heavily utilizingsurface-level features, such as user demographic profile, browsingactivities, and counting of named entities, but without rich semanticfeatures.

Therefore, there is a need to provide an improved solution for userprofiling for content recommendation to tackle the above-mentionedchallenges.

SUMMARY

The present teaching relates to methods, systems, and programming foruser profiling for content recommendation over the internet. Inparticular, the present teaching relates to methods, systems, andprogramming for user profiling for content recommendation over theinternet.

According to an embodiments of the present teaching, a methodimplemented on a computing device having at least one processor,storage, and a communication platform connected to a network forgenerating user profiles with semantic knowledge comprises obtainingfirst information associated with a user; identifying one or moreentities from the first information; augmenting the one or more entitiesbased on second information to generate a set of augmented entities;clustering the set of augmented entities into a set of hierarchicalclusters; and generating a set of user profiles based on the set ofhierarchical clusters so that the user profile is to be used topersonalize content recommendation.

In some embodiments, the method further comprises identifying at leastone related entity from the second information that relates to the oneor more entities; and adding the at least one related entity to the oneor more entities to generate the set of augmented entities, wherein thesecond information comprises a knowledge archive of named entities.

In some embodiments, the method further comprises estimating userinterests with respect to the set of augmented entities; andincorporating the user interests with respect to the set of augmentedentities into the user profile.

In some embodiments, estimating user interests with respect to the setof augmented entities further comprises identifying known user interestswith respect to the one or more entities based on semantic relationshipsbetween the one or more entities; estimating inferred user interestswith respect to the at least one related entity based on semanticrelationships between the at least one related entity and the one ormore entities; and estimating strength of the user interests withrespect to the set of augmented entities in accordance with the inferreduser interests.

In some embodiments, the method further comprises applying a latentfactor model to estimate the user interest, wherein the latent factormodel is trained using user interaction data.

In some embodiments, all aspects of user interests are organized in ahierarchical structure to form the set of user profiles and each of theset of user profiles defines an aspect of user interests.

According to another embodiment of the present teaching, a system havingat least one processor, storage, and a communication platform forgenerating user profiles with semantic knowledge comprises a useractivity analyzer configured to obtain first information associated witha user; an entity extractor configured to identify one or more entitiesfrom the first information; an entity augmenting module configured toaugment the one or more entities based on second information to generatea set of augmented entities; an entity clustering module configured tocluster the set of augmented entities into a set of hierarchicalclusters; and a user profile generating module configured to generate aset of user profiles based on the set of hierarchical clusters so thatthe set of user profiles is to be used to personalize contentrecommendation.

In some embodiments, each of the set of hierarchical clusters defines ahierarchical relationship among at least part of the set of augmentedentities.

According to yet another embodiment of the present teaching, anon-transitory machine-readable medium having information recordedthereon for generating user profiles with semantic knowledge, where theinformation, when read by the machine, causes the machine to performobtaining first information associated with a user; identifying one ormore entities from the first information; augmenting the one or moreentities based on second information to generate a set of augmentedentities; clustering the set of augmented entities into a set ofhierarchical clusters; and generating a set of user profiles based onthe set of hierarchical clusters so that the set of user profiles is tobe used to personalize content recommendation.

According to yet another embodiment of the present teaching, a methodimplemented on a computing device having at least one processor,storage, and a communication platform connected to a network forrecommending content using user profiling comprises receiving an inputfrom a user; generating a set of user profiles based on informationassociated with the user and a knowledge archive; augmenting the set ofuser profiles based on a set of pre-constructed user profiles; andrecommending content to the user in response to the input based on theset of augmented user profiles, wherein each of the set of user profilesdefines an aspect of user interests with respect to a plurality ofentities.

In some embodiments, generating a set of user profiles based oninformation associated with the user and a knowledge archive furthercomprises obtaining first information associated with the user;identifying one or more entities from the first information; augmentingthe one or more entities based on the knowledge archive to generate aset of augmented entities; clustering the set of augmented entities intoa set of hierarchical clusters; and generating the set of user profilesbased on the set of hierarchical clusters.

BRIEF DESCRIPTION OF THE DRAWINGS

The methods, systems, and/or programming described herein are furtherdescribed in terms of exemplary embodiments. These exemplary embodimentsare described in detail with reference to the drawings. Theseembodiments are non-limiting exemplary embodiments, in which likereference numerals represent similar structures throughout the severalviews of the drawings, and wherein:

FIG. 1 illustrates an exemplary system diagram of user profiling forcontent recommendation, according to an embodiment of the presentteaching;

FIG. 2 illustrates an exemplary flowchart of the user profiling system,according to an embodiment of the present teaching;

FIG. 3 illustrates an exemplary system diagram of an entity augmentingmodule, according to an embodiment of the present teaching;

FIG. 4 illustrates an example of the entity augmentation, according toan embodiment of the present teaching;

FIG. 5 illustrates an example of the knowledge archive, according to anembodiment of the present teaching;

FIG. 6 an exemplary flowchart of the entity augmentation, according toan embodiment of the present teaching;

FIG. 7 illustrates an exemplary system diagram of an entity clusteringmodule, according to an embodiment of the present teaching;

FIG. 8 illustrates an example of the entity clustering, according to anembodiment of the present teaching;

FIG. 9 illustrates an exemplary flowchart of the entity clustering,according to an embodiment of the present teaching;

FIG. 10 illustrates an exemplary system diagram of a user interestestimating module, according to an embodiment of the present teaching;

FIG. 11 illustrates an example of the user interest estimating,according to an embodiment of the present teaching;

FIG. 12 illustrates an exemplary flowchart of the user interestestimating, according to an embodiment of the present teaching;

FIG. 13 illustrates an exemplary system diagram of user profiling forcontent recommendation, according to an embodiment of the presentteaching;

FIG. 14 illustrates an exemplary flowchart of user profiling for contentrecommendation, according to an embodiment of the present teaching;

FIG. 15 illustrates an example of augmenting the user profile inresponse to a user input, according to an embodiment of the presentteaching;

FIG. 16 illustrates an exemplary flowchart of augmenting the userprofile in response to a user input, according to an embodiment of thepresent teaching;

FIG. 17 illustrates a network environment of a user profiling system forcontent recommendation, according to an embodiment of the presentteaching;

FIG. 18 illustrates a network environment of a user profiling system forcontent recommendation, according to another embodiment of the presentteaching; and

FIG. 19 depicts a general computer architecture on which the presentteaching can be implemented.

DETAILED DESCRIPTION

In the following detailed description, numerous specific details are setforth by way of examples in order to provide a thorough understanding ofthe relevant teachings. However, it should be apparent to those skilledin the art that the present teachings may be practiced without suchdetails. In other instances, well known methods, procedures, systems,components, and/or circuitry have been described at a relativelyhigh-level, without detail, in order to avoid unnecessarily obscuringaspects of the present teachings.

Throughout the specification and claims, terms may have nuanced meaningssuggested or implied in context beyond an explicitly stated meaning.Likewise, the phrase “in one embodiment/example” as used herein does notnecessarily refer to the same embodiment and the phrase “in anotherembodiment/example” as used herein does not necessarily refer to adifferent embodiment. It is intended, for example, that claimed subjectmatter include combinations of example embodiments in whole or in part.

In general, terminology may be understood at least in part from usage incontext. For example, terms, such as “and”, “or”, or “and/or,” as usedherein may include a variety of meanings that may depend at least inpart upon the context in which such terms are used. Typically, “or” ifused to associate a list, such as A, B or C, is intended to mean A, B,and C, here used in the inclusive sense, as well as A, B or C, here usedin the exclusive sense. In addition, the term “one or more” as usedherein, depending at least in part upon context, may be used to describeany feature, structure, or characteristic in a singular sense or may beused to describe combinations of features, structures or characteristicsin a plural sense. Similarly, terms, such as “a,” “an,” or “the,” again,may be understood to convey a singular usage or to convey a pluralusage, depending at least in part upon context. In addition, the term“based on” may be understood as not necessarily intended to convey anexclusive set of factors and may, instead, allow for existence ofadditional factors not necessarily expressly described, again, dependingat least in part on context.

The present teaching focuses on developing models capable of accuratelypredicting future user interests by exploiting deep semantic knowledgeencoded in the search queries and webpage contents that the usersvisited through the named entities. Named entities appearing in thesearch queries, contents, and stream news articles are important to knowwhat the web pages are about. Named entities have ontological features,such as types, attributes, and relationships with other named entities,which are hidden from their textual appearance. The present teachingrecognizes the named entities from queries and page contents, links therecognized named entities to the entities in the Yahoo Knowledge Graph,extracts information from the Yahoo Knowledge Graph, infers relationalinformation between the named entities, generates augmented namedentities, clusters the augmented named entities in multiple hierarchicalstructures. Utilizing the semantic knowledge encoded in the queries,contents, ads, and other sources to generate multi-aspects of userprofile in a hierarchical structure can improve the understanding aboutusers' interests, which can be further used to better predict the user'sinterests and recommend content to the users. The predictive model canbe used for a wide variety of applications, including supportingpro-active changes to the interface to emphasize results of likelyinterest or to suggest contextually-relevant query alternatives, moretraditional applications to ranking and filtering, news feed andappropriate ads recommendation, etc.

The present teaching describes various aspects of the inventionincluding but not limited to user profiling, recommendation systems, andlatent factor models. The goal of the present teaching is to modeluser's interests and provide personalized content recommendation withina large-scale framework. As such, a frame work—Factorization Machine isapplied to overcome both data sparsity and cold-start problems and toinfer user interest vectors. The present teaching exploits more semanticknowledge and entities in addition to those appeared in each user'sprevious click history and content categories as features, to enrich thefeature space by utilizing the related entities extracted from aknowledge base, and augments seen entities with similar unseen entities.Therefore, the present teaching can take advantage of the abundantknowledge stored in the knowledge base such as, Yahoo Knowledge Graphand entity embedding vectors that are generated from huge amounts ofdata to capture users' preferences more from the semantic knowledgeaspect. Further, the present teaching can also derive the latentcharacteristics from multiple granularities and levels of entities andconcepts. This also enables the user profiling model to predict users'future interests for a long-term period.

Additional novel features will be set forth in part in the descriptionwhich follows, and in part will become apparent to those skilled in theart upon examination of the following and the accompanying drawings ormay be learned by production or operation of the examples. The novelfeatures of the present teachings may be realized and attained bypractice or use of various aspects of the methodologies,instrumentalities and combinations set forth in the detailed examplesdiscussed below.

FIG. 1 illustrates an exemplary system diagram of user profiling forcontent recommendation, according to an embodiment of the presentteaching. User profiling generating engine 100 comprises an entityextractor 102, an entity augmenting module 104, an entity clusteringmodule 106, a user profile generating module 108, an entity weightestimating module 110, a knowledge archive 120, a user profile database128, a user activity database 140, and a content pool 150. Informationrelated to a user's activities are collected and stored in content pool150. Such information may include queries, page titles, and content frompages that the user has searched, visited, or viewed from the user clicklogs. From content pool 150, entity extractor 102 periodically extractsa plurality of elements related to the user activities. Entity extractor102 further locates and classifies the plurality of elements intopre-defined categories such as the names of persons, organizations,locations, expressions of times, quantities, monetary values,percentages, etc., and generates a known entity list 116. Each knownentity in the list is assigned with a weight indicating the user's knowninterest level. The weights of the known entities may be estimated byentity weight estimating module 110 using the semantic knowledgeassociated with the extracted known entities. In some embodiments, thesemantic knowledge may include any types of semantic relations or linksbetween the known entities, for example, product-of, CEO-of, spouse-of,or member-of, etc. In some other embodiments, the semantic knowledge mayinclude any types of events related to the known entities, for example,product release, exhibition, tournament, technology forum, etc. Itshould be appreciated that the semantic knowledge between the entitiesis not limited to the above examples but can be any aspects associatedthe entities over a time period, a geographic range, an attribute field,etc. It should be understood that the user's interest level with respectto any named entity can be represented in various format. Thus, theweight indicating the user's known interest level may include anumerical representation, a percentage representation, a five starscaled representation, a text description, a graphical illustration,etc. Further, it should be understood that the components shown in FIG.1 are for illustrative purpose, and the present teaching is not intendedto be limiting.

Entity augmenting module 104 is configured to augment the known entitylist 116 in accordance with information from knowledge archive 120.Entity augmenting module 104 first links the extracted known entities tocorresponding entities in knowledge archive 120. The linking of theknown entities to knowledge archive 120 is based on an exact match or asimilarity match. For example, the linking of known entity “Steve Jobs”to “Tim Cook” in knowledge archive 120 is based on a similarity match.Entity augmenting module 104 further identities inferred entities fromknowledge archive 120 that are related to the known entities in varioussemantic aspects such as categories, attributes, facts, hierarchicalstructured relations, etc. Entity augmenting module 104 furthergenerates a set of augmented entity lists 118 to include known entities,inferred entities related to the known entities from knowledge archive120, and the semantic relationships between the known entities and theinferred entities. In some embodiments, each augmented entity listincludes a known entity and one or more inferred entities that aresemantically related to the known entity. For example, an augmentedentity list may include known entity “Michael Jordan” and inferredentities “Chicago Bulls,” “NBA,” “Basketball,” and “Sports.” Thesemantic relationships between “Michael Jordan” and the inferredentities include member-of-team, player-of-league,professional-of-sports, etc. In some embodiments, different augmentedentity lists may define different aspects of semantic relationshipsbetween the known entities and the inferred entities. For example, forknown entity “Steve Jobs,” the first augmented entity list may includeinferred entities “Apple” and “iPhone,” and the second augmented entitylist may include inferred entities “Tim Cook,” “Marissa Mayer,” and“CEO.” The semantic relationship defined in the first augmented list isproduct-of, while the semantic relationship defined in the secondaugmented list is CEO-of. It should be appreciated that the semanticrelations between the named entities are not limited to the above notedexamples. Any relations discovered via a plurality of content sources,such as the scientific publications, content from social media networks,online news articles, etc. can be adopted by knowledge archive 120. Insome embodiments, the semantic relations between the named entities maybe entitled with attribute information including time period from firstobserved, geographic information of two semantically related namedentities, frequencies of the semantic relations that are observed,robustness and/or expansion of the semantic relations, etc.

Knowledge archive 120 may be an online encyclopedia such as Wikipedia,an indexing system such as an online dictionary, a corporation knowledgebase such as Yahoo knowledge graph, a community-level knowledge basesuch as Freebase, Nell, etc., as shown in FIG. 5. Knowledge archive 120provides classification or categorization system to classify both userdata as well as content. Such classification structure may interpretuser interest profile in multiple dimensions, and provide entityaugmenting module 104 with multi-dimensional semantic understanding ofthe named entities.

Entity clustering module 106 is configured to generate a set ofhierarchical clusters 124 based on information provided by the set ofaugmented entity lists. Each hierarchical cluster illustrates one ormore hierarchical relations between the entities, and includes one ormore super-entities on the top layer and a plurality of entities on thelower layer. The super-entity may denote a hierarchical attribute,category, character, etc. of the entities that are linked beneath thesuper-entities. In some embodiments, each of the set of hierarchicalcluster may be consistent with the semantic relationship defined in thecorresponding augmented entity list. In yet some other embodiments, thehierarchical cluster may be generated using one or more combinations ofthe semantic relationships defined in the set of augmented entity lists.Entity clustering module 106 may select one or more clustering models122 to generate the set of hierarchical clusters. Clustering models 122may define a number of clusters to be generated, a number of clusternodes within each cluster, the graphic structure of each cluster, andother aspects of the cluster. In some embodiments, entity clusteringmodule 106 may apply one clustering model to generate the set ofhierarchical clusters. In yet some other embodiments, entity clusteringmodule 106 may apply different clustering models with respect todifferent aspects of the semantic relationships defined in augmentedentity lists 118. Each entity in augmented entity lists 118 is modeledas a node in one or more hierarchical clusters. Each known entity inaugmented entity lists 118 is assigned with a weight estimated by entityweight estimating module 110 indicating the user's known interest level.Each inferred entity in augmented entity lists 118 may be initializedwith a zero weight indicating that the user's interest to the inferredentity is yet unknown. It should be appreciated that the weightindicating the user's inferred interest strength may include a numericalrepresentation, a percentage representation, a five star scaledrepresentation, a text description, a graphical illustration, etc.

User profile generating module 108 is configured to receive the set ofhierarchical clusters indicating a set of user interest aspects andgenerate a set of user profiles. User profile generating module 108 maycomprise a user interest estimating module 112 and a training module108. User interest estimating module 112 estimates a weight for eachinferred entity based on the semantic knowledge associated with theinferred entity and the known entities obtained from knowledge archive120. User interest estimating module 112 further re-scores the weightfor each known entity to reflect the degree of user interest inaccordance with the estimated weights of the inferred entities and thesemantic relationships between the each known entity and the inferredentities. In some embodiments, the entity augmentation, the entityclustering, and the user interest estimation may perform severaliterations to ensure thorough investigation of knowledge archive 120. Insome embodiments, to estimate the user interest or the entity weightaccurately, a training model may be employed using stored userinteraction data under sparsity, for example, from user activitydatabase 140. The training model may include a latent factor model, afactorization machine, and/or other models based on factor inference oranalysis. After all entities in the set of hierarchical clusters areassigned with the estimated weights, training module 114 applies thefactorization machine, for example, to train one or more parametersassociated with the model using user interaction data. The trainedfactorization machine or the latent factor model is further used topredict the user interest based on the set of hierarchical clusters, andgenerate a user profile 126 to be used to personalize contentrecommendation. The generated user profile 126 may be stored in userprofile database 128 locally and/or over the network.

Content pool 150 may be a general content pool to serve all users orhave personalized content pools with respect to different users. Contentpool 150 may be constructed as a hierarchical structure with a top layerof the general content pool and several low layers of the personalizedcontent pools. Content pool 150 is dynamically updated in accordancewith the user online activities. When a user 130 visits a content source136, a user activity analyzer 132 receives information related to theactivities of user 130 and logs the received activities in a useractivity log 134. User activity analyzer 132 further analyzesinformation related to the activities of user 130 and determines whetherthere is a newly detected interest from the user. In some embodiments,when there is a newly detected interest from the user, content crawler138 fetches new content from content source 136 and updates content pool150. In some embodiments, when there is a newly detected interest fromthe user, entity extractor 102 may be triggered to obtain informationfrom the newly updated content pool 150 and identifies newly discoveredentities related to the newly detected user interest.

FIG. 2 illustrates an exemplary flowchart of the user profiling system,according to an embodiment of the present teaching. The flowchartpresented below is intended to be illustrative. In some embodiments, theflowchart may be accomplished with one or more additional operations notdescribed, and/or without one or more of the operations discussed.Additionally, the order in which the operations of the flowchart asillustrated in FIG. 2 and described below is not intended to belimiting. Information related to activities of a user is obtained at202. Based on the obtained information, a plurality of entities isidentified at 204 reflecting the interests of the user. At 206, theplurality of entities is augmented in accordance with a knowledgearchive. The augmented entities are clustered into a set of hierarchicalclusters at 208. At 210, user interest with respect to the clusteredaugmented entities is estimated. Further, a user profile based on theset of hierarchical clusters is generated at 212. In some embodiments,when the user profile is previously constructed, the user profile isupdated or augmented based on the set of hierarchical clusters isgenerated at 212.

FIG. 3 illustrates an exemplary system diagram of an entity augmentingmodule, according to an embodiment of the present teaching. Entityaugmenting module 104 shown in FIG. 1 may include an entity linking unit302, an entity attribute learning unit 304, an inferred entity learningunit 306, an entity taxonomy learning unit 308, an entity relationshiplearning unit 310, and an entity enriching unit 312. Entity linking unit302 receives known entity list 116 and links each known entity with oneor more additional entities in knowledge archive 120. The linkage of theknown entity with the one or more additional entities may be based onexact matching of the entity words or similarities of the entitieswords. For example, an entity from knowledge archive 120 being analternation of the known entity word is considered linked to the knownentity. Entity attribute learning unit 304 is configured to obtainattribute information related to the linked known entity from knowledgearchive 120. For example, the entity “title” is categorized in theattribute “book” in an online dictionary database. Inferred entitylearning unit 306 is configured to obtain one or more inferred entitiesthat are semantically related to the linked known entity. Entitytaxonomy learning unit 308 is configured to obtain information relatedto a classification or categorization of the linked known entity. Insome embodiments, the entity attribute information and the entitytaxonomy information may be defined the same or differently inaccordance with different sources of knowledge archive. Entityrelationship learning unit 310 is configured to obtain information ofthe semantic relationship between the linked known entity and anyinferred entities in knowledge archive 120. Entity enriching unit 312receives the outputs from entity attribute learning unit 304, inferredentity learning unit 306, entity taxonomy learning unit 308, and entityrelationship learning unit 310 to generate a set of augmented entitylists 118. It should be understood that the components of entityaugmenting module 104 shown in FIG. 3 are for illustrative purpose, andthe present teaching is not intended to be limiting. Entity augmentingmodule 104 may comprise more learning units in order to thoroughlydiscover the inferred entities. In some embodiments, the multiplelearning units may be integrated such that entity augmenting module 104comprises less components than illustrated. Further, it should beappreciated that entity augmenting module 104 may obtain informationfrom one or more other knowledge archives in addition to the illustratedknowledge archive 120. As different knowledge archives may havedifferent knowledge definition and structure, entity augmenting module104 may further comprise additional components to process and integrateknowledges from various archives.

FIG. 4 illustrates an example of the entity augmentation, according toan embodiment of the present teaching. A known entity “Michael Jordan”is augmented to include inferred entities “Chicago Bulls,” “NBA,”“Basketball,” and “Sports.” The inferred entity may be accompanied byenriched information, for example, “Chicago Bulls” is accompanied by asemantic relationship description “member-of” Further, known entity“Steve Jobs” is augmented to include inferred entities “Apple,” “TimCook,” “iPhone,” “CEO,” and “Marissa Mayer,” wherein “iPhone” isaccompanied by a semantic relationship description “Product-of” and“Marissa Mayer” is accompanied by a semantic relationship description“CEO-of.”

FIG. 6 an exemplary flowchart of the entity augmentation, according toan embodiment of the present teaching. In some embodiments, theflowchart may be accomplished with one or more additional operations notdescribed, and/or without one or more of the operations discussed.Additionally, the order in which the operations of the flowchart asillustrated in FIG. 6 and described below is not intended to belimiting. The known entities are linked to a knowledge archive at 602.Additional entities related to the known entities are obtained at 604.Further, attribute information related to the known entities is obtainedat 606; taxonomy information related to the known entities is obtainedat 608; relationship information related to the known entities isobtained at 610. Based on the information obtained from the knowledgearchive, a plurality of augmented entity lists is generated at 612.

FIG. 7 illustrates an exemplary system diagram of an entity clusteringmodule, according to an embodiment of the present teaching. Entityclustering module 104 shown in FIG. 1 may include a known entityextracting unit 702, an inferred entity extracting unit 704, aclustering unit with respect to (w.r.t) entity name 706, a clusteringunit w.r.t. entity attribute 708, a clustering unit w.r.t. entitytaxonomy 710, and a clustering unit w.r.t. entity relationships 712.Known entity extracting unit 702 and inferred entity extracting unit 704extract the known entities and the inferred entities from augmentedentity list 118, respectively. Further, the known entities and theinferred entities are selectively grouped into one or more clusters. Forexample, clustering unit w.r.t entity name 706 groups one or more knownentities and their related inferred entities in one cluster; clusteringunit w.r.t. entity attribute 708 groups the known entities and theinferred entities in one cluster if they belong to the same attribute;clustering unit w.r.t. entity taxonomy 710 groups the known entities andthe inferred entities in one cluster if they are defined as the sametaxonomy; and clustering unit w.r.t. entity relationships 712 groups theknown entities and the inferred entities in one cluster if theseentities have the same semantic relationship. Each clustering unit ofclustering unit w.r.t. entity name 706, clustering unit w.r.t. entityattribute 708, clustering unit w.r.t. entity taxonomy 710, andclustering unit w.r.t. entity relationships 712 may use the same orindividual clustering model 122. For example, clustering unit w.r.t.entity name 706 may use a mesh network structure having one known entityand top five inferred entities. In yet another example, clustering unitw.r.t. entity taxonomy 710 may use a hierarchical tree structureillustrating multiple layers of entities in the aspect of taxonomy. Itshould be understood that the components of entity clustering module 106are for illustrative purpose, and the present teaching is not intendedto be limiting. The entity clustering may be based on other aspectsrelated to the named entities. In some embodiments, the variousclustering units may be integrated in one unit for processing. As aknown entity may be used in different clusters, information related tothe different aspects related to the known entity may be included in thecluster. For example, linkage information between two clusters sharingthe same known entity may be included in the generated clusters. In someembodiments, the semantic relations between two entities may be denotedwithin each cluster in the form of numerical numbers, percentagenumbers, graphical illustrations, text descriptions, etc.

As illustrated in FIG. 7, cluster 714 is an example of a mesh networkstructure having known entities E_(k) and E_(m), and inferred entityE_(n). E_(k) and E_(m) are assigned with weight 0.2 and 0.1,respectively, based on relational inference. E_(n) is newly inferredentity from the knowledge archive and is assigned with zero weight.Cluster 716 is an example of a hierarchical tree structure having knownentities E_(k) and E_(m), and inferred entity E_(n) and E_(p), whereinE_(n) is a higher level entity relative to E_(k), and E_(p) is a higherlevel entity relative to E_(m).

FIG. 8 illustrates an example of the entity clustering, according to anembodiment of the present teaching. Augmented entity list 118 withrespect to known entity “Steve Jobs” is grouped into two clusters 802and 804. Cluster 802 includes two inferred entities “Apple” and “iPhone”as being products of Steve Job's company. Cluster 804 includes inferredentities “Tim Cook” and “Marissa Mayer,” and the inferred entities andthe known entity “Steve Jobs” belong to attribute “CEO.”

FIG. 9 illustrates an exemplary flowchart of the entity clustering,according to an embodiment of the present teaching. In some embodiments,the flowchart may be accomplished with one or more additional operationsnot described, and/or without one or more of the operations discussed.Additionally, the order in which the operations of the flowchart asillustrated in FIG. 9 and described below is not intended to belimiting. Known entities are extracted from the augmented entity listsat 902. Inferred entities are extracted from the augmented entity listsat 904. Further, the known entities and the inferred entities areclustered based on entity name using a selected clustering model at 906;the known entities and the inferred entities are clustered based onentity attribute using a selected clustering model at 908; the knownentities and the inferred entities are clustered based on entitytaxonomy using a selected clustering model at 910; and the knownentities and the inferred entities are clustered based on entityrelationships using a selected clustering model at 912. Based on themultiple clustering schemes, one or more entity clusters are generatedat 914.

FIG. 10 illustrates an exemplary system diagram of a user interestestimating module. User interest estimation module 112 shown in FIG. 1comprises an entity weight inferring unit 1002, an entity weightadjusting unit 1004, and a ranking unit 1006. Entity weight inferringunit 1002 receives information related to the set of hierarchicalclusters. Such information includes cluster node information, forexample, the name of the entity denoted by the cluster node and theinitial weight of the entity. In some embodiments, such information mayfurther include relation information between the cluster nodes denotedas a linkage weight between two cluster nodes. Entity weight inferringunit 1002 estimates the weight for each inferred entities within acluster based on the relation information obtained from knowledgearchive 120. Once the inferred entities are assigned with initialweights, entity weight adjusting unit 1004 re-scores the weights of theknown entities within the cluster. In some embodiments, entity weightadjusting unit 1004 increases the weight of each known entities equallyon the basis on the weight of an inferred entity connected therewith. Inyet other embodiments, entity weight adjusting unit 1004 mayredistribute the weights between the related known entities based on therelational factors between the known entities and the inferred entity.Ranking unit 1006 ranks the rescored entities within the cluster. A userprofile is then generated including one or more profile pagescorresponding to the set of hierarchical clusters. The user profileincludes information related to the user's known interests and theuser's potential interests represented by the known entities and theinferred entities, respectively. Each of the known entities and theinferred entities is accompanied by additional information indicatingthe user's interest level with respect to a particular entity. Theuser's interest level may be denoted by numerical number, percentagenumber, a textual description, etc. Each profile page indicates anaspect of the user's interests, and thus, the generated user profile isa multi-aspect of the user's interests. As shown in FIG. 10, userprofile page 1008 and user profile page 1010 are generated based oncluster 714 and cluster 716, respectively. It should be understood thatthe components shown in FIG. 10 are for illustrative purpose, and thepresent teaching is not intended to be limiting. More or less units maybe included in user interest estimating module 112.

FIG. 11 illustrates an example of the user interest estimating,according to an embodiment of the present teaching. User profile page1102 and user profile page 1104 are generated based on cluster 802 andcluster 804, respectively. User profile page 1102 illustrates the user'sinterest level in known entity “Steve Jobs” as being 0.3, the user'sinterest level in inferred entity “Apple” as being 0.1, and the user'sinterest level in inferred entity “iPhone” as being 0.1. Comparing tocluster 802, the user's interest level in known entity “Steve Jobs” isincreased from 0.2 to 0.3 in accordance with the assignment of userinterests to the inferred entities “Apple” and “iPhone.” User profilepage 1102 may be interpreted as the user's interests in the aspect ofApple products. In another example, user profile page 1104 illustratesthe user's interest level in known entity “Steve Jobs” as being 0.3, theuser's interest level in inferred entities “Tim Cook” as being 0.1,“Marissa Mayer” as being 0.1, and “CEO” as being 0.1. User profile page1104 may be interpreted as the user's interests in the aspect of CEO ofhigh tech companies.

FIG. 12 illustrates an exemplary flowchart of the user interestestimating, according to an embodiment of the present teaching. In someembodiments, the flowchart may be accomplished with one or moreadditional operations not described, and/or without one or more of theoperations discussed. Additionally, the order in which the operations ofthe flowchart as illustrated in FIG. 12 and described below is notintended to be limiting. Semantic relationships between the entities foreach cluster are identified in accordance with the knowledge base at1202. A weight for each inferred entity is determined based on therelationship between the known entities and the inferred entities withineach cluster at 1204. The weight of each known entity within eachcluster is adjusted based on the weight of the inferred entities at1206. The entities within each cluster are ranked at 1208. The weightedentities based clusters are further trained using a training model at1210. User profiles including a plurality of weighted entity clusters inhierarchical structure are generated at 1212.

FIG. 13 illustrates an exemplary system diagram of user profiling forcontent recommendation, according to an embodiment of the presentteaching. The system of user profiling for content recommendationcomprises a user profile generating engine 100 as shown in FIG. 1, auser profile comparing module 1302, a user profile updating module 1304,and a content recommending engine 1310. The multiple hierarchical entitycluster based profile for each user may be used to infer each user'sfuture interests and recommend content based on the inferred futureinterest. When an input such as a new feed or a new query is receivedfrom user 130, user profile generating engine generates local profile1306. The process of generating local profile based on the user input,content that the user has visited or viewed, and knowledge archive 120is described above and thus, is not detailed herein. User profilecomparing module 1302 receives the generated local profile 1306 andcompares it with a pre-constructed user profile 1308 associated with theuser. Based on the comparison result, user profile updating module 1304updates local user profile 1306 and pre-constructed user profile 1308.The updated pre-constructed user profile 1308 is further saved in userprofile database 128. Content recommending engine 1310 is configured torecommend content in response to the user input based on the up-to-dateuser profile. If the prediction of the user's future interests isconsidered positive or the user's feedback on the recommended content ispositive, newly identified named entities is utilized to incrementallyupdate the multiple hierarchical entity cluster based profile of eachuser. Meanwhile, the new knowledge can be incorporated into the localprofile for each user after a certain size of feeds (e.g., 10 feeds) ora certain time period (e.g., one day).

FIG. 14 illustrates an exemplary flowchart of user profiling for contentrecommendation, according to an embodiment of the present teaching. Insome embodiments, the flowchart may be accomplished with one or moreadditional operations not described, and/or without one or more of theoperations discussed. Additionally, the order in which the operations ofthe flowchart as illustrated in FIG. 14 and described below is notintended to be limiting. An input related to a user activity is receivedat 1402. Local user profiles are generated based on the user activityand information provided by a knowledge archive at 1404. The local userprofiles are compared with the pre-constructed user profiles at 1406.The pre-constructed user profiles are updated with the local userprofiles at 1408.

FIG. 15 illustrates an example of augmenting the user profile inresponse to a user input, according to an embodiment of the presentteaching. User profile comparing module 1302 shown in FIG. 13 maycomprise an entity similarity determining unit 1510, a level similaritydetermining unit 1512, a relation similarity determining unit 1514, andan event similarity determining unit 1516. The entity clustering andprofile comparison may be performed using various levels/granularitiesof the hierarchical clusters or a knowledge graph with differentsimilarity metrics. Entity similarity determining unit 1510 isconfigured to compare a local user profile with a pre-constructed userprofile and determine an entity-based similarity. For example, entitysimilarity determining unit 1510 captures similar entities, e.g., SteveJobs→Tim Cook. Level similarity determining unit 1512 is configured todetermine a level-based similarity between the local user profile andthe pre-constructed user profile. For example, level similaritydetermining unit 1512 determines latent characteristics orsuper-entities, e.g., Steve Jobs & Tim Cook→(executives of) Apple, Inc.Relation similarity determining unit 1514 is configured to determine arelation-based similarity between the local user profile and thepre-constructed user profile. For example, relation similaritydetermining unit 1514 denotes the entities that share the similarrelationship, e.g., Tim Cook & Apple, Inc.→Marissa Mayer & Yahoo! Inc.Event similarity determining unit 1516 is configured to determine anevent-based similarity degree between the local user profile and thepre-constructed user profile. For example, event similarity determiningunit 1516 determines the entities that may get involved in the sameevent or the same category of event, e.g., iPhone, iPad, Apple Watch→new(Apple) product release. It should be understood that the componentsshown in FIG. 15 are for illustrative purpose, and the present teachingis not intended to be limiting. The local user profile and thepre-constructed user profile may be compared in accordance with criteriaother than that are illustrated.

User profile updating module 1304 then updates the local user profileand the pre-constructed user profile based on the various aspects ofcomparisons. In some embodiments, logistic regression classifier may beused to determine if the user has an interest in the current news feedor search result. As illustrated in FIG. 15, local user profile 1502 iscompared with pre-constructed user profile 1504. A higher-level superentity similarity E_(n) is discovered. Consequently, local user profile1502 is updated to new version 1506 that includes related entities frompre-constructed user profile 1504; and pre-constructed user profile 1504is updated to new version 1508 that includes related entities from localuser profile 1502.

FIG. 16 illustrates an exemplary flowchart of augmenting the userprofile in response to a user input, according to an embodiment of thepresent teaching. In some embodiments, the flowchart may be accomplishedwith one or more additional operations not described, and/or without oneor more of the operations discussed. Additionally, the order in whichthe operations of the flowchart as illustrated in FIG. 16 and describedbelow is not intended to be limiting. An entity similarity between thelocal user profiles and the pre-constructed user profiles is determinedat 1602. An inferred entity similarity or a higher-level similaritybetween the local user profiles and the pre-constructed user profiles isdetermined at 1604. A relation similarity between the local userprofiles and the pre-constructed user profiles is determined at 1606. Anevent similarity between the local user profiles and the pre-constructeduser profiles is determined at 1608. Further, the respective profile inthe local user profiles and the pre-constructed user profiles areupdated at 1610.

FIG. 17 illustrates a network environment of a user profiling system forcontent recommendation, according to an embodiment of the presentteaching. The network environment of a user profiling system for contentrecommendation includes users 1700, a plurality of content sources 136,a network 1702, a training machine 1704, a user profile generatingengine 1706, a content recommending engine 1708, a user activitydatabase 140, a knowledge archive 120, and a user profile database 128.User 1700 may connect to network 1702 via various types of devices, forexample, a desktop computer, a laptop computer, a mobile device, abuilt-in device in a motor vehicle, etc. Network 1702 may be a singlenetwork or a combination of multiple networks. For example, network 1702may be a local area network (LAN), a wide area network (WAN), a publicnetwork, a private network, a proprietary network, a Public TelephoneSwitched Network (PSTN), the Internet, a wireless communication network,a virtual network, or any combination thereof. Training machine 1704,user profile generating engine 1706, and content recommending engine1708 may be configured to connect to network 1702 individually andcommunicate with user activity database 140 via network 1702 in responseto an input to generate user profiles. User profile database 128 maycommunicate directly with training engine 1704, user profile generatingengine 1706, and content recommending engine 1708. In some embodiments,user profile database 128 may be located in a cloud remotely accessiblevia network 1702. The plurality of content sources 136 may supply newentities, new feedbacks, etc. to update user activity database 140. Theabove components of the network environment of a content recommendationsystem are for illustrative purpose, and may include more or lesscomponents than illustrated.

FIG. 18 illustrates a network environment of a user profiling system forcontent recommendation, according to another embodiment of the presentteaching. The network environment illustrated herewith is similar toFIG. 17, except that training engine 1704 and user profile generatingengine 1706 are backend engines connected to content recommending engine1708. Training engine 1704 and user profile generating engine 1706 mayfunction individually and separately from content recommending engine1708, and the functions of training engine 1704 and user profilegenerating engine 1706 may be invoked via content recommending engine1708. In some embodiments, training engine 1704 and user profilegenerating engine 1706 may be incorporated into content recommendingengine 1708 and function as one single component.

FIG. 19 depicts a general computer architecture on which the presentteaching can be implemented. The computer may be a general-purposecomputer or a special purpose computer. This computer can be used toimplement any components of the system for user profiling and contentrecommendation as described herein. Different components of the systemsdisclosed in the present teaching can all be implemented on one or morecomputers such as computer, via its hardware, software program,firmware, or a combination thereof. Although only one such computer isshown, for convenience, the computer functions relating to contentrecommendation may be implemented in a distributed fashion on a numberof similar platforms, to distribute the processing load.

The computer, for example, includes COM ports 1902 connected to and froma network connected thereto to facilitate data communications. Thecomputer also includes a CPU 1904, in the form of one or moreprocessors, for executing program instructions. The exemplary computerplatform includes an internal communication bus 1906, program storageand data storage of different forms, e.g., disk 1908, read only memory(ROM) 1910, or random access memory (RAM) 1912, for various data filesto be processed and/or communicated by the computer, as well as possiblyprogram instructions to be executed by the CPU 1904. The computer alsoincludes an I/O component 1914, supporting input/output flows betweenthe computer and other components therein such as user interfaceelements 1916. The computer may also receive programming and data vianetwork communications.

Hence, aspects of the methods of user profiling for recommendingcontent, as outlined above, may be embodied in programming. Programaspects of the technology may be thought of as “products” or “articlesof manufacture” typically in the form of executable code and/orassociated data that is carried on or embodied in a type of machinereadable medium. Tangible non-transitory “storage” type media includeany or all of the memory or other storage for the computers, processorsor the like, or associated modules thereof, such as varioussemiconductor memories, tape drives, disk drives and the like, which mayprovide storage at any time for the software programming.

All or portions of the software may at times be communicated through anetwork such as the Internet or various other telecommunicationnetworks. Such communications, for example, may enable loading of thesoftware from one computer or processor into another. Thus, another typeof media that may bear the software elements includes optical,electrical, and electromagnetic waves, such as used across physicalinterfaces between local devices, through wired and optical landlinenetworks and over various air-links. The physical elements that carrysuch waves, such as wired or wireless links, optical links or the like,also may be considered as media bearing the software. As used herein,unless restricted to tangible “storage” media, terms such as computer ormachine “readable medium” refer to any medium that participates inproviding instructions to a processor for execution.

Hence, a machine readable medium may take many forms, including but notlimited to, a tangible storage medium, a carrier wave medium or physicaltransmission medium. Non-volatile storage media include, for example,optical or magnetic disks, such as any of the storage devices in anycomputer(s) or the like, which may be used to implement the system orany of its components as shown in the drawings. Volatile storage mediainclude dynamic memory, such as a main memory of such a computerplatform. Tangible transmission media include coaxial cables; copperwire and fiber optics, including the wires that form a bus within acomputer system. Carrier-wave transmission media can take the form ofelectric or electromagnetic signals, or acoustic or light waves such asthose generated during radio frequency (RF) and infrared (IR) datacommunications. Common forms of computer-readable media thereforeinclude for example: a floppy disk, a flexible disk, hard disk, magnetictape, any other magnetic medium, a CD-ROM, DVD or DVD-ROM, any otheroptical medium, punch cards paper tape, any other physical storagemedium with patterns of holes, a RAM, a PROM and EPROM, a FLASH-EPROM,any other memory chip or cartridge, a carrier wave transporting data orinstructions, cables or links transporting such a carrier wave, or anyother medium from which a computer can read programming code and/ordata. Many of these forms of computer readable media may be involved incarrying one or more sequences of one or more instructions to aprocessor for execution.

Those skilled in the art will recognize that the present teachings areamenable to a variety of modifications and/or enhancements. For example,although the implementation of various components described above may beembodied in a hardware device, it can also be implemented as a softwareonly solution—e.g., an installation on an existing server. In addition,the units of the host and the client nodes as disclosed herein can beimplemented as a firmware, firmware/software combination,firmware/hardware combination, or a hardware/firmware/softwarecombination.

While the foregoing has described what are considered to be the bestmode and/or other examples, it is understood that various modificationsmay be made therein and that the subject matter disclosed herein may beimplemented in various forms and examples, and that the teachings may beapplied in numerous applications, only some of which have been describedherein. It is intended by the following claims to claim any and allapplications, modifications and variations that fall within the truescope of the present teachings.

We claim:
 1. A method implemented on a computing device having at leastone processor, storage, and a communication platform connected to anetwork for generating user profiles with semantic knowledge, the methodcomprising: obtaining first information associated with a user;identifying one or more entities from the first information; augmentingthe one or more entities based on second information to generate a setof augmented entities; clustering the set of augmented entities into aset of hierarchical clusters; and generating a set of user profilesbased on the set of hierarchical clusters so that the user profile is tobe used to personalize content recommendation.
 2. The method of claim 1,further comprising: identifying at least one related entity from thesecond information that relates to the one or more entities; and addingthe at least one related entity to the one or more entities to generatethe set of augmented entities, wherein the second information comprisesa knowledge archive of named entities.
 3. The method of claim 2, furthercomprising: estimating user interests with respect to the set ofaugmented entities; and incorporating the user interests with respect tothe set of augmented entities into the user profile.
 4. The method ofclaim 3, wherein estimating user interests with respect to the set ofaugmented entities further comprises: identifying known user interestswith respect to the one or more entities based on semantic relationshipsbetween the one or more entities; estimating inferred user interestswith respect to the at least one related entity based on semanticrelationships between the at least one related entity and the one ormore entities; and estimating strength of the user interests withrespect to the set of augmented entities in accordance with the inferreduser interests.
 5. The method of claim 4, further comprising: applying alatent factor model to estimate the user interest, wherein the latentfactor model is trained using user interaction data.
 6. The method ofclaim 1, wherein all aspects of user interests are organized in ahierarchical structure to form the set of user profiles and each of theset of user profiles defines an aspect of user interests.
 7. A systemhaving at least one processor, storage, and a communication platform forgenerating user profiles with semantic knowledge, the system comprising:a user activity analyzer configured to obtain first informationassociated with a user; an entity extractor configured to identify oneor more entities from the first information; an entity augmenting moduleconfigured to augment the one or more entities based on secondinformation to generate a set of augmented entities; an entityclustering module configured to cluster the set of augmented entitiesinto a set of hierarchical clusters; and a user profile generatingmodule configured to generate a set of user profiles based on the set ofhierarchical clusters so that the set of user profiles is to be used topersonalize content recommendation.
 8. The system of claim 7, whereinthe entity augmenting module is further configured to: identify at leastone related entity from the second information that relates to the oneor more entities; and add the at least one related entity to the one ormore entities to generate the set of augmented entities, wherein thesecond information includes semantic knowledge associated with the setof augmented entities.
 9. The system of claim 8, further comprises auser interest estimating module configured to: estimate user interestswith respect to the set of augmented entities; and incorporate the userinterests with respect to the set of augmented entities into the userprofile.
 10. The system of claim 9, wherein the user interest estimatingmodule configured to: identify known user interests with respect to theone or more entities based on relationships between the one or moreentities; estimate inferred user interests with respect to the at leastone related entity based on relationships between the at least onerelated entity and the one or more entities; and estimate strength ofthe user interests with respect to the set of augmented entities inaccordance with the inferred user interest.
 11. The system of claim 7,wherein each of the set of hierarchical clusters defines a hierarchicalrelationship among at least part of the set of augmented entities. 12.The system of claim 7, wherein all aspects of user interests areorganized in a hierarchical structure to form a user profile, and eachof the set of user profiles defines an aspect of user interests.
 13. Anon-transitory machine-readable medium having information recordedthereon for generating user profiles with semantic knowledge, whereinthe information, when read by the machine, causes the machine to performthe following: obtaining first information associated with a user;identifying one or more entities from the first information; augmentingthe one or more entities based on second information to generate a setof augmented entities; clustering the set of augmented entities into aset of hierarchical clusters; and generating a set of user profilesbased on the set of hierarchical clusters so that the set of userprofiles is to be used to personalize content recommendation.
 14. Themedium of claim 13, wherein the information, when read by the machine,causes the machine to further perform the following: identifying atleast one related entity from the second information that relates to theone or more entities; and adding the at least one related entity to theone or more entities to generate the set of augmented entities, whereinthe second information includes semantic knowledge associated with theset of augmented entities.
 15. The medium of claim 14, wherein theinformation, when read by the machine, causes the machine to furtherperform the following: estimating user interests with respect to the setof augmented entities; and incorporating the user interests with respectto the set of augmented entities into the user profile.
 16. The mediumof claim 15, wherein the information, when read by the machine, causesthe machine to further perform the following: identifying known userinterests with respect to the one or more entities based onrelationships between the one or more entities; estimating inferred userinterests with respect to the at least one related entity based onrelationships between the at least one related entity and the one ormore entities; and estimating strength of the user interests withrespect to the set of augmented entities in accordance with the inferreduser interest.
 17. The medium of claim 13, wherein each of the set ofhierarchical clusters defines a hierarchical relationship among at leastpart of the set of augmented entities.
 18. The medium of claim 13,wherein all aspects of user interests are organized in a hierarchicalstructure to form the set of user profiles, and each of the set of userprofiles defines an aspect of user interests.
 19. A method implementedon a computing device having at least one processor, storage, and acommunication platform connected to a network for recommending contentusing user profiling, the method comprising: receiving an input from auser; generating a set of user profiles based on information associatedwith the user and a knowledge archive; augmenting the set of userprofiles based on a set of pre-constructed user profiles; andrecommending content to the user in response to the input based on theset of augmented user profiles, wherein each of the set of user profilesdefines an aspect of user interests with respect to a plurality ofentities.
 20. The method of claim 19, wherein generating a set of userprofiles based on information associated with the user and a knowledgearchive further comprises: obtaining first information associated withthe user; identifying one or more entities from the first information;augmenting the one or more entities based on the knowledge archive togenerate a set of augmented entities; clustering the set of augmentedentities into a set of hierarchical clusters; and generating the set ofuser profiles based on the set of hierarchical clusters.